import { AuthTypeEnum } from "@/enums/LoginEnum";
import { CardTypeEnum, ChatSource, MessageType } from "@/enums/MessageEnum";


/**
 * 智能体信息
 */
export interface BotInfo {
    certificationType: AuthTypeEnum | null;
    iconFileUrl: string;
    id: number;
    name: string;
    phone: string | null;
    uuid: string;
    backImage: string;
    isShowPhone: boolean;
    isFriend: boolean;
}


/**
 * 添加好友信息
 */
export interface AddFriendInfo {
    /* 好友uuid */
    beApplyBotUUid: string;
    /* 申请内容 */
    applyContent: string;
    /* 标签ID */
    labelIds: number[];
}

/**
 * 创建会话返回数据
 */
export interface CreateChatResponse {
    /* 日志ID */
    logID: string;
    /* 会话ID */
    id: string;
}

/**
 * 发起会话参数
 */
export interface ChatLaunchRequest {
    /* 对话ID */
    conversationId: string;
    /* 智能体ID */
    uuid: string;
    /* 内容类型 */
    contentType: string;
    /* 对话内容 */
    content: string;
    /* 圈子ID */
    circleUuid?: string;
    /* 聊天来源 */
    chatSource?: ChatSource;
}

/**
 * 发起会话返回参数
 */
export interface ChatLaunchResponse {
    /* 日志ID */
    logID: string | null;
    /* 会话ID */
    id: string;
    /* 对话ID */
    conversationId: string;
    /* 智能体ID */
    uuid: string;
}

/**
 * 查看对话详情参数
 */
export interface ChatRetrieveRequest {
    /* 对话ID */
    conversationId: string;
}

/**
 * 查看对话详情返回参数
 */
export interface ChatRetrieveResponse {
    /* 日志ID */
    logID: string | null;
    /* 会话ID */
    id: string;
    /* 对话ID */
    conversationId: string;
    /* 智能体ID */
    uuid: string;
    /* 会话状态 */
    status: string;
}



/**
 * 消息响应接口
 */
export interface MessageRecord {
    /* 消息ID */
    id?: string;
    /* 消息类型 */
    type?: MessageType;
    /* 消息内容 */
    content: string;
    /* 内容类型 */
    contentType?: string;
    /**快捷回复列表 */
    quickReplies?: string[],
    /**是否正在思考 */
    loading?: boolean,
    /**打字中 */
    typing?: boolean,
}

// 添加聊天记录分页请求参数
export interface ConversationMessageListRequest {
    conversationId: string;
    current?: number;   // 当前页码
    size?: number;      // 每页大小
}


export interface ConnectionInfo {
    /** 类型 1:智能体 2:找人-会员信息 3:找企业-会员信息 */
    type: CardTypeEnum;
    /** logo */
    logo: string;
    /** 头像 */
    avatar: string;
    /** 用户名 */
    username: string;
    /** 会员角色名称 */
    memberRoleName: string;
    /** 等级名称 */
    levelName: string;
    /** 公司名称 */
    companyName: string;
    /** 公司职位名称 */
    companyPositionName: string;
    /** 文本内容 */
    text: string;
    /** 机器人UUID */
    botUUID: string;
    /** 机器人名称 */
    botName: string;
    /** 机器人认证类型 */
    botCertificationType: string;
    /** 分析描述 */
    analyDesc: string;
}